#include "App.h"
#include "bsp_dot_matrix.h"
#include <string.h>

// 定义动画帧数据
static uint8_t animation_frames[3][8] = {
    {0x18, 0x24, 0x42, 0x81, 0x81, 0x42, 0x24, 0x18}, // 圆形
    {0x00, 0x3C, 0x42, 0x42, 0x42, 0x42, 0x3C, 0x00}, // 小圆形
    {0x00, 0x00, 0x18, 0x24, 0x24, 0x18, 0x00, 0x00}  // 更小的圆形
};

// 当前动画帧索引
static uint8_t current_frame = 0;

// 点阵动画任务函数
void App_debug_dm_animation_task() {
    // 设置当前帧到点阵显示
    for (uint8_t i = 0; i < DM_NUM; i++) {
        dm_set_data(i, animation_frames[current_frame]);
    }
    
    // 更新帧索引，实现循环播放
    current_frame = (current_frame + 1) % 3;
    
    // 显示
    dm_display();
}